package com.artezio.task.dao;

import com.artezio.task.model.Contact;

import java.io.UnsupportedEncodingException;
import java.util.List;

public interface ContactsDao {
    void addNewContact(Contact contact);

    void saveContact(Contact contact);

    List<Contact> getAllContacts();

    Contact findContactById(int id);

    void deleteContactById(int id);

    void deleteContact(Contact contact);

    List<Contact> getContactsByCriteria(String firstName, String lastName, String telType, String telNumber);

    List<Contact> getContactsByCriteriaSortByNameAjax(String firstName, String lastName, String telType, String telNumber, String order);

    List<Contact> getContactsByCriteriaSortByLastNameAjax(String firstName, String lastName, String telType, String telNumber, String order);

    List<Contact> getContactsByCriteriaPaginAjax(String firstName, String lastName, int maxRes,int firstRes, String order, String sSearch) throws UnsupportedEncodingException;
}
